import df_generation
day?: 9/11 time?: 15:00 code?: 1156054000 truncation coeff?(0 ~ 1): 0.4
df=df_generation.df
import pydeck as pdk
layer = pdk.Layer(
'PolygonLayer', # 사용할 Layer 타입
df, # 시각화에 쓰일 데이터프레임
get_polygon='coordinates', # geometry 정보를 담고있는 컬럼 이름
get_fill_color='[255, 255*(1-nor_pop), 255*(1-nor_pop)]', ## or nor_pop_density # 각 데이터 별 rgb 또는 rgba 값 (0~255)
get_line_color='[0, 0, 0]', # 각 데이터 별 rgb 또는 rgba 값 (0~255) [경계선]
get_line_width=50, # 경계선 굵기
pickable=True, # 지도와 interactive 한 동작 on
auto_highlight=True # 마우스 오버(hover) 시 박스 출력
)
# Set the viewport location
center = [126.986, 37.565]
view_state = pdk.ViewState(
longitude=center[0],
latitude=center[1],
zoom=10)
#마우스 오버시 툴팁 columns 출력
tooltip = {
"text": "행정지: {name} \n행정동코드: {code} \n인구: {pop}"
}
# Render
r = pdk.Deck(layers=[layer], initial_view_state=view_state, tooltip=tooltip)
r.show()
layer = pdk.Layer(
'PolygonLayer', # 사용할 Layer 타입
df, # 시각화에 쓰일 데이터프레임
get_polygon='coordinates', # geometry 정보를 담고있는 컬럼 이름
get_fill_color='[255, 255*(1-nor_pop), 255*(1-nor_pop)]', ## or nor_pop_density # 각 데이터 별 rgb 또는 rgba 값 (0~255)
get_line_color='[0, 0, 0]',
pickable=True, # 지도와 interactive 한 동작 on
auto_highlight=True, # 마우스 오버(hover) 시 박스 출력
extruded= True, #3D plot
get_elevation='nor_pop', ## or nor_pop_density #elevation할 column
elevation_scale=3000, #elevation scale
wireframe=True #경계선 표시
)
view_state.bearing=15 #시점 좌우 각도
view_state.pitch=45 #시점 상하 각도
tooltip = {
"text": "행정지: {name} \n행정동코드: {code} \n인구: {pop}"
}
r = pdk.Deck(layers=[layer], initial_view_state=view_state, tooltip=tooltip)
r.show()
df_in=df_generation.df_in
df_out=df_generation.df_out
df_diff=df_generation.df_diff
layer = pdk.Layer(# od in data Line layer
'LineLayer',
df_in, # od in dataframe
get_source_position='[from_lon, from_lat]', #from position
get_target_position='[to_lon, to_lat]', #to position
get_width ='10*nor_pop', ## or trunc_nor_pop
get_color='[255*nor_pop, 0, 0]',
pickable=True, # interactive map
auto_highlight=True, #mouse over
highlight_color=[255, 255, 0] #mouse over color
)
layerP = pdk.Layer( #배경 행정구 그림
'PolygonLayer',
df,
get_polygon='coordinates',
get_fill_color='[255, 255, 255]',
get_line_color='[0, 0, 0]',
get_line_width=100,
opacity=0.2,
)
center = [126.986, 37.565]
view_state = pdk.ViewState(
longitude=center[0],
latitude=center[1],
zoom=10)
tooltip = {
"text": "from: {from} \nto: {to} \npop: {pop}"
}
r = pdk.Deck(layers=[layerP,layer], initial_view_state=view_state, tooltip=tooltip)
r.show()
layer = pdk.Layer(
'LineLayer',
df_out,
get_source_position='[from_lon, from_lat]',
get_target_position='[to_lon, to_lat]',
get_width ='10*nor_pop', ## or trunc_nor_pop
get_color='[0, 0, 255*nor_pop]',
pickable=True,
auto_highlight=True,
highlight_color=[255, 255, 0]
)
center = [126.986, 37.565]
view_state = pdk.ViewState(
longitude=center[0],
latitude=center[1],
zoom=10)
tooltip = {
"text": "from: {from} \nto: {to} \npop: {pop}"
}
r = pdk.Deck(layers=[layerP,layer], initial_view_state=view_state, tooltip=tooltip)
r.show()
layer = pdk.Layer(
'LineLayer',
df_diff,
get_source_position='[from_lon, from_lat]',
get_target_position='[to_lon, to_lat]',
get_width ='15*abs_trunc_nor_pop', ## or abs_trunc_nor_pop
get_color='[123+122*nor_pop, 0, 123-122*(nor_pop)]', #차이의 절댓값에 굵기 비례, 차이가 양수일때 red 음수일때 blue
pickable=True,
auto_highlight=True,
highlight_color=[255, 255, 0]
)
center = [126.986, 37.565]
view_state = pdk.ViewState(
longitude=center[0],
latitude=center[1],
zoom=10)
tooltip = {
"text": "from: {from} \nto: {to} \npop: {pop}"
}
r = pdk.Deck(layers=[layerP,layer], initial_view_state=view_state, tooltip=tooltip)
r.show()
layer = pdk.Layer(
'ArcLayer',
df_in,
get_source_position='[from_lon, from_lat]',
get_target_position='[to_lon, to_lat]',
get_width ='10*nor_pop', ## or trunc_nor_pop
get_source_color='[0, 0, 0]', #출발 rgb
get_target_color='[255*nor_pop, 0, 0]', #도착 rgb
pickable=True,
auto_highlight=True,
highlight_color=[255, 255, 0]
)
center = [126.986, 37.565]
view_state = pdk.ViewState(
longitude=center[0],
latitude=center[1],
zoom=10)
view_state.bearing = 15
view_state.pitch = 45
tooltip = {
"text": "from: {from} \nto: {to} \npop: {pop}"
}
r = pdk.Deck(layers=[layerP,layer], initial_view_state=view_state, tooltip=tooltip)
r.show()
layer = pdk.Layer(
'ArcLayer',
df_out,
get_source_position='[from_lon, from_lat]',
get_target_position='[to_lon, to_lat]',
get_width ='10*nor_pop', ## or trunc_nor_pop
get_source_color='[0, 0, 0]',
get_target_color='[0, 0, 255*nor_pop]',
pickable=True,
auto_highlight=True,
highlight_color=[255, 255, 0]
)
center = [126.986, 37.565]
view_state = pdk.ViewState(
longitude=center[0],
latitude=center[1],
zoom=10)
view_state.bearing = 15
view_state.pitch = 45
tooltip = {
"text": "from: {from} \nto: {to} \npop: {pop}"
}
r = pdk.Deck(layers=[layerP,layer], initial_view_state=view_state, tooltip=tooltip)
r.show()
layer = pdk.Layer(
'ArcLayer',
df_diff,
get_source_position='[from_lon, from_lat]',
get_target_position='[to_lon, to_lat]',
get_width ='15*abs_trunc_nor_pop', ## or abs_trunc_nor_pop
get_source_color='[0, 0, 123-122*nor_pop]',
get_target_color='[123+122*nor_pop, 0, 0]',
pickable=True,
auto_highlight=True,
highlight_color=[255, 255, 0]
)
center = [126.986, 37.565]
view_state = pdk.ViewState(
longitude=center[0],
latitude=center[1],
zoom=10)
view_state.bearing = 15
view_state.pitch = 45
tooltip = {
"text": "from: {from} \nto: {to} \npop: {pop}"
}
r = pdk.Deck(layers=[layerP,layer], initial_view_state=view_state, tooltip=tooltip)
r.show()